An XOR (exclusive or) retransmission method in a multicast system is currently studied whereby a transmitter retransmits retransmission data obtained by performing XOR calculation for data that is requested for retransmission from receivers (e.g. see Non-Patent Document 1). This XOR retransmission method allows the amount of retransmission data to be reduced. Now, explanation will be given in detail using a schematic diagram of XOR retransmission shown in FIG. 1. First, a transmitter transmits data packets P1, P2 and P3 to receiver 1, receiver 2 and receiver 3 at the same time. In FIG. 1, receiver 1 cannot receive data packet P1 correctly, receiver 2 cannot receive data packet P2 correctly and receiver 3 cannot receive data packet P3 correctly. Then, receiver 1 transmits a retransmission request (NACK: negative acknowledgment) for data packet P1 to the transmitter, receiver 2 transmits a retransmission request (NACK) for data packet P2 to the transmitter and receiver 3 transmits a retransmission request (NACK) for data packet P3 to the transmitter. Upon receiving these retransmission requests, the transmitter transmits retransmission data packet C according to following equation 1.
[1]C=P1⊕P2⊕P3  (Equation 1)
In equation 1, “⊕” represents the XOR calculation of bits. Further, the transmitter reports to each receiver that retransmission data packet C is obtained from XOR calculation of data packets P1, P2 and P3. Accordingly, data packets P2 and P3 are already known, so that receiver 1 restores data packet P1 by the XOR calculation represented in equation 2 upon receiving data packet C. Likewise, receiver 2 restores data packet P2 by the XOR calculation represented in equation 3 and receiver 3 restores data packet P3 by the XOR calculation represented in equation 4.
[2]P1=C⊕P2⊕P3  (Equation 2)[3]P2=C⊕P1⊕P3  (Equation 3)[4]P3=C⊕P1⊕P2  (Equation 4)
With a conventional retransmission method, a transmitter has to retransmit data packets P1, P2 and P3 individually. By contrast with this, by adopting the above-described XOR retransmission method, the transmitter has only to retransmit one retransmission packet C acquired by equation 1 even when data packets P1, P2 and P3 need to be retransmitted. By this means, with an XOR retransmission method, it is possible to reduce the amount of retransmission data.
As described above, in data packets (e.g. data packets P1, P2 and P3 represented in equation 1) forming one retransmission packet obtained by XOR calculation (e.g. retransmission data packet C represented in equation 1), if there is one error data packet in one receiver, that receiver is able to restore the error data packet correctly using the retransmission data packet. On the other hand, if errors occur in two or more data packets in one receiver, the error data packets cannot be restored even by using retransmission data packets.
For example, in FIG. 1, receiver 1 cannot receive data packet P1 correctly, receiver 2 cannot receive data packet P2 or data packet P3 correctly and receiver 3 cannot receive data packet P3 correctly. In this case, if the transmitter retransmits retransmission data packet C obtained according to equation 1, receivers 1 and 3 are able to receive (restore) data packets P1 and P3 correctly, respectively. By contrast with this, data packet P2 or data packet P3 are not already known (that is, they are not known), and therefore receiver 2 does not receive (restore) packet P2 or data packet P3 correctly.
By acquiring retransmission requests from the receivers, the transmitter knows which data packets each receiver cannot receive correctly. Then, the transmitter might allocate data packets subject to XOR calculation such that only one data packet is unknown in one receiver in a group of data packets forming one retransmission data packet in XOR retransmission (hereinafter “XOR retransmission group”). For example, as described above, assume that receiver 1 cannot receive data packet P1 correctly, receiver 2 cannot receive data packet P2 or data packet P3 correctly and receiver 3 cannot receive data packet P3 correctly. In this case, the transmitter is able to transmit a retransmission data packet formed with an XOR retransmission group represented by following equation 5 or 6,
[5]C1=P1⊕P2  (Equation 5)[6]C2=P1⊕P3  (Equation 6)
Upon receiving retransmission data packet C1, receiver 1 can restore data packet P1 and receiver 2 can restore data packet P2. Further, upon receiving retransmission data packet C2, receiver 2 can restore data packet P3 and receiver 3 can restore data packet P3. By forming data packets forming XOR retransmission groups in this way, each receiver can avoid two or more unknown data packets in each XOR retransmission group. However, in this case, as described above, each receiver has to report to the transmitter which data packet each receiver requests for retransmission.
Further, MBMS (Multimedia Broadcast Multicast Service) refers to the multimedia broadcast•multicast functions defined in 3GPP R6. MBMS supports two types of modes, namely, multimedia broadcast service and multicast service. Further, with MBMS, multimedia video information can be broadcast to all users or can be transmitted such that only a certain group of pay-subscribers is able to watch multimedia video information. Accordingly, MBMS is useful when the operator explores various business applications including multimedia advertisement, free or pay TV channels and collective messages. Further, an operator is able to develop mobile phone television services at a relatively low network operation cost. Generally, with MBMS, a transmitter is referred to as “base station (BS)” and a receiver is referred to as “user apparatus (i.e. user equipment: UE).” Further, currently, in 3GPP LTE (Long Term Evolution), MBMS service enhancement by E-MBMS (Evolved MBMS) is studied. In studies of MBMS in LTE, the method of feeding back NACKs using a common control channel (i.e. a common feedback channel shown in FIG. 2) in order to save uplink signaling resources is proposed. When an error is detected as a result of CRC check (Cyclic Redundancy Check) for a received data packet, each UE transmits a NACK signal on the common feedback channel shown in FIG. 2 in order to show that the UEs are unable to receive this data packet correctly. Meanwhile, each UE transmits nothing when the UEs receive the data packet correctly (when no error is detected by CRC). Upon detecting a NACK signal, the BS retransmits the data packet corresponding to that NACK signal.
Usually, with a conventional MBMS system, downlink transmission efficiency is improved using the above-described XOR retransmission method. To use this XOR retransmission method, however, it is necessary to allocate individual feedback channels on a per UE basis (dedicated feedback channels).
FIG. 3 shows an example of a conventional XOR retransmission method. In FIG. 3, the BS transmits data packets P1 to P12. Further, data packets P1 to P6 form XOR retransmission group 1 and data packets P7 to P12 form XOR retransmission group 2. Further, n UEs in total (UE 1 to UE n) receive data packets P1 to P12. Further, as shown in FIG. 3, in XOR retransmission group 1, errors are present in data packets P1 and P2 received in UE 1 (“x” shown in FIG. 3) and errors are present in data packets P4 and P5 received in UE 2. Further, in XOR retransmission group 2, an error is present in data packet P10 received in UE 1.
Upon receiving data packets, as shown in FIG. 3, UEs feed back ACKs/NACKs on a per UE basis. “1” shown in FIG. 3 represents that a NACK is fed back and “0” shown in FIG. 3 represents that an ACK is fed back. In FIG. 3, the maximum XOR retransmission group length is six.
Upon receiving ACKs/NACKs fed back from the UEs, the BS knows that data packets P1 and P2 need to be retransmitted to UE 1 and data packets P4 and P5 need to be retransmitted to UE 2 in XOR retransmission group 1. Then, the BS determines two retransmission data packets C1 and C2 obtained by XOR calculation shown by following equation 7 or 8 for XOR retransmission group 1.
[7]C1=P1⊕P4, C2=P2⊕P5  (Equation 7)[8]C1=P1⊕P5, C2=P2⊕P4  (Equation 8)
As represented in equation 7 or 8, if the rules for allocation of retransmission data packets by the BS in XOR retransmission groups (i.e. allocation rules in which there is only one unknown data packet in a receiver in an XOR retransmission group) are ensured, errors occur in only one data packet at maximum in any UEs receiving one retransmission data packet.
Meanwhile, the BS allocates one retransmission data packet C3 represented by following equation 9 to XOR retransmission group 2.
[9]C3=P10  (Equation 9)
Upon transmitting a retransmission data packet using the XOR retransmission method, however, the BS has to report to UEs at the same time how many data packets are included in the retransmission data packet.
In this way, if the BS knows which data packet each UE needs to be retransmitted, the BS is able to determine retransmission data packets in each XOR retransmission group according to the allocation rules under the XOR retransmission method. However, in this case, it is necessary to allocate individual feedback channels on a per UE basis (dedicated feedback channels), and therefore, uplink signaling overhead increases. To be more specific, as shown in FIG. 3, uplink signaling increases linearly according to an increase of the number of UEs.
Non-Patent Document 1: “XOR Retransmission in Multicast Error Recovery,” Shen Yong and Lee Bu Sung; Networks, 2000 (ICON 2000), September 2000, Pages :336-340